From dab11ea841df081042f545ee86987c6046b77062 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 3 Nov 2020 10:23:34 -0500 Subject: [PATCH] popover: Change default for cascade-popdown We've found a number of cases where this cascading has unexpected side-effects. So, turn it off by default, and only set it for menus. --- demos/widget-factory/widget-factory.ui | 2 +- gtk/gtkpopover.c | 4 ++-- gtk/gtkpopovermenu.c | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/demos/widget-factory/widget-factory.ui b/demos/widget-factory/widget-factory.ui index 36bee582cf..c4410a1ab2 100644 --- a/demos/widget-factory/widget-factory.ui +++ b/demos/widget-factory/widget-factory.ui @@ -3220,7 +3220,7 @@ bad things might happen. end emblem-system-symbolic - gear_menu + gear_menu_model This is a menu button 1 diff --git a/gtk/gtkpopover.c b/gtk/gtkpopover.c index 1cfe499f52..2a17b677da 100644 --- a/gtk/gtkpopover.c +++ b/gtk/gtkpopover.c @@ -839,7 +839,7 @@ gtk_popover_init (GtkPopover *popover) priv->final_position = GTK_POS_BOTTOM; priv->autohide = TRUE; priv->has_arrow = TRUE; - priv->cascade_popdown = TRUE; + priv->cascade_popdown = FALSE; controller = gtk_event_controller_key_new (); g_signal_connect_swapped (controller, "key-pressed", G_CALLBACK (gtk_popover_key_pressed), popover); @@ -1674,7 +1674,7 @@ gtk_popover_class_init (GtkPopoverClass *klass) g_param_spec_boolean ("cascade-popdown", P_("Cascade popdown"), P_("Wether the popover pops down after a child popover"), - TRUE, + FALSE, GTK_PARAM_READWRITE|G_PARAM_EXPLICIT_NOTIFY); g_object_class_install_properties (object_class, NUM_PROPERTIES, properties); diff --git a/gtk/gtkpopovermenu.c b/gtk/gtkpopovermenu.c index 751d14c176..c3f39ed0ce 100644 --- a/gtk/gtkpopovermenu.c +++ b/gtk/gtkpopovermenu.c @@ -309,6 +309,7 @@ gtk_popover_menu_init (GtkPopoverMenu *popover) g_free (controllers); gtk_popover_disable_auto_mnemonics (GTK_POPOVER (popover)); + gtk_popover_set_cascade_popdown (GTK_POPOVER (popover), TRUE); } static void -- 2.30.2